package org.getOffer.offer24;

/**
 * @Author: wjy
 * @Date: 2021/9/22 14:39
 */
public class Solution {

    public static void main(String[] args) {

        ListNode listNode1 = new ListNode(1);
        ListNode listNode2 = new ListNode(2);
        ListNode listNode3 = new ListNode(3);
        ListNode listNode4 = new ListNode(4);
        ListNode listNode5 = new ListNode(5);
        listNode1.next = listNode2;
        listNode2.next = listNode3;
        listNode3.next = listNode4;
        listNode4.next = listNode5;

        ListNode reverseNode = reverseList(listNode1);

        ListNode temp = reverseNode;

        while (true) {

            if (temp == null) {
                break;
            }

            System.out.println(temp.val);

            temp = temp.next;

        }

    }

/*    public static ListNode reverseList(ListNode head) {
        if (head == null) {
            return null;
        }

        ListNode temp = head;
        ListNode next;
        ListNode prev = null;

        while (temp != null) {
            next = temp.next;
            temp.next = prev;
            prev = temp;
            temp = next;
        }

        return prev;

    }*/

    public static ListNode reverseList(ListNode listNode) {
        if (listNode == null) {
            return listNode;
        }

        ListNode temp = null, next;

        while (listNode != null) {

            next = listNode.next;
            listNode.next = temp;
            temp = listNode;
            listNode = next;

        }

        return temp;
    }

}

class ListNode {
    int val;
    ListNode next;
    ListNode(int x) { val = x; }
}
